﻿using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Authentication.Model.ViewModel.Customer
{
    public class IncentiveAdhocViewModel : GenerateViewMode, IViewModel
    {
        [Required(ErrorMessage = "Scheme Code is required.")]
        [Display(Name = "Scheme Code:")]
        [StringLength(12, ErrorMessage = "Scheme Code cannot be longer than 12 characters.")]
        public string SchemeCode { get; set; }

        [Required(ErrorMessage = "Scheme Name is required.")]
        [Display(Name = "Scheme Name:")]
        [StringLength(100, ErrorMessage = "Scheme Name cannot be longer than 100 characters.")]
        public string SchemeName { get; set; }

        [Display(Name = "Scheme Name Search:")]
        [StringLength(100, ErrorMessage = "SchemeNameSearch cannot be longer than 100 characters.")]
        public string SchemeNameSearch { get; set; }

        [Display(Name = "Purpose:")]
        [StringLength(1000, ErrorMessage = "Purpose cannot be longer than 1000 characters.")]
        public string Purpose { get; set; }

        [Required(ErrorMessage = "Start Date is required.")]
        [Display(Name = "Start Date:")]
        public DateTime StartDate { get; set; }

        [Required(ErrorMessage = "End Date is required.")]
        [Display(Name = "End Date:")]
        public DateTime EndDate { get; set; }

        [Display(Name = "Start Date Search:")]
        public string StartDateSearch { get; set; }

        [Display(Name = "End Date Search:")]
        public string EndDateSearch { get; set; }

        [Display(Name = "Close Date:")]
        public DateTime CloseDate { get; set; }

        [Display(Name = "Mdi:")]
        [StringLength(1, ErrorMessage = "Mdi cannot be longer than 1 characters.")]
        public string Mdi { get; set; }

        [Display(Name = "Purpose Type:")]
        [StringLength(1, ErrorMessage = "Purpose Type cannot be longer than 1 characters.")]
        public string PurposeType { get; set; }

        [Display(Name = "Bill to Code:")]
        [StringLength(100, ErrorMessage = "Bill to Code cannot be longer than 100 characters.")]
        public string BilltoCode { get; set; }

        [Display(Name = "Area:")]
        [Required(ErrorMessage = "Region is required.")]
        public string RegionIdentifier { get; set; }

    }
}
